package tp1
import java.util._
import scala.collection.mutable.Map
import scala.collection.mutable.ArrayBuffer
import scala.util.control.Breaks

class Proyecto(responsable: Persona,fechaPresentacion:GregorianCalendar,fechaAprobacion: GregorianCalendar,nombre:String,
	monto:Int) extends Actividad(responsable,fechaPresentacion,fechaAprobacion,nombre,monto){
  
	var resultados = new ArrayBuffer[(String,GregorianCalendar)]()
	var experimentos = new ArrayBuffer[Experimento]()
	
	def bitacoras(): ArrayBuffer[ArrayBuffer[String]] ={
	  
	  var bits = new ArrayBuffer[ArrayBuffer[String]]
	  this.experimentos foreach{exp => bits += exp.bitacora}
	  bits
	}
	  
	  
	def cargarResultado(resultado:String,fecha: java.util.GregorianCalendar){
	  var tup = (resultado,fecha)
	  this.resultados += tup;
	}
	
	def cargarExperimento(exp: Experimento){
	  this.experimentos += exp
	}

	override def tieneArticulos(): Boolean={
    var tiene = false
    this.resultados foreach{res => if(res._1 contains "articulo") tiene = true}
    tiene
  }
	
	override def articulos(): ArrayBuffer[(String,GregorianCalendar)] ={
	  var articulos = new ArrayBuffer[(String,GregorianCalendar)]()
	  this.resultados foreach{res => if(res._1 contains "articulo"){
		  articulos += res
	  	}
	  }
	  articulos
	}
	
	override def informacion(): String ={
	  
	  var string = ""
	    this.experimentos foreach{exp => string + exp.datos()}
	  string
	}
	
	//override def printData(){
	  //if(bitacora.size>0){
	    //bitacora.values.foreach{i =>
	      //println("Experimento: "+ i.ex_Experimento + " Hora Desde: "+i.sa_horaDesde+" Hora Hasta: "+i.sa_horaHasta)
	    //}
	  //}else{
	    //println ("No hay Experimentos hasta el momento")
	  //}
	//}

}